Copyright: (c) Peak Systems 1997


"The Firmware" and WA8DED

Back to Main Index

Introduction

Requirements - TF/DED

Requirements - TFEMU

Enabling Host Mode

Host Mode Initialisation

Using Host Mode

The Virtual TNC

Multi-channel Terminal

Terminal Menus

Terminal Opens Itself!

If Things Go Wrong

WA8DED And BSX2s


Introduction

This version of WinPack has host mode support for "The Firmware" (TF) from Nord><Link, for WA8DED firmware and also for PC Flexnet via TFEMU which is a TF emulator.

If you have a TNC2 compatible TNC fitted with an EPROM containing one of these two firmwares, or you are loading PC Flexnet and TFEMU on your PC, then read on! Otherwise select "Back" at the top of this window.

 Besides having all the normal WinPack functions, host mode will allow you to use an extra terminal screen which supports up to 9 more channels. You will also be able to use the main WinPack display in split-screen mode - the top window shows monitored traffic and the bottom window shows your own connection.

Host mode support includes a Virtual TNC which supports TNC2 style commands. It has online help available for all the available commands.

In host mode, if WinPack hears a nodes broadcast, it will decode it and display it in a tabular format. This is something which a "normal" TNC does not do.

If you are using TFEMU, please ignore all comments in this help about TNC settings - your TNCs are supported via PC Flexnet and the settings are irrelevant as far as WinPack is concerned.


Enabling Host Mode Support

If you are using a TNC with TF or WA8DED firmware, select "Options", "Comms Setup" on the WinPack menu. Click on the "Host mode" list to drop it down and select "TF2.7b". Make sure that the Baud Rate and Com Port are correct. The Data Bits, Stop Bits and Handshaking will be ignored. When using host mode you should set the baud rate to 4800 or faster, but don't go faster than 9600 unless you know you have a 16550 UART, with the FIFO enabled, on the COM port used by your TNC, see System Requirements.

If you are using PC Flexnet and TFEMU, select "Options", "Comms Setup" on the WinPack menu. Click on the "Host mode" list to drop it down and select "TFEMU", all the COM port settings are irrelevant.

Click on "Ok", the cursor should change to an hour glass and WinPack will attempt to communicate with the TNC (or with TFEMU). You may see some "Invalid Command" messages appear on the screen, but eventually the cursor will return to an arrow and a "cmd:" prompt will appear. If that doesn't happen, but instead you get an error message, close down WinPack, make sure your TNC really does have either TF or WA8DED firmware, or that PC Flexnet and TFEMU are correctly loaded, and restart WinPack.

If you use the FBB unproto message header beacons, you MUST do the following:-

Close WinPack, edit PACKET.INI and find the [FBB] section. Look for the entry that says "BBS_UNPROTO=>FBB" and change it to "BBS_UNPROTO=to FBB". Save PACKET.INI and restart WinPack.


Host Mode Initialisation

When WinPack starts in host mode, it needs to establish communication with the TNC (or TFEMU). It assumes that the TNC is not in host mode and sends the command to put it into host mode. It then sends a whole series of initialisation commands. Unlike when it is using a TNC in command mode, WinPack does not assume that the correct parameters are in the TNC, instead it reinitialises them all from the values saved in PACKET.INI, or from default values within the program.

If any command fails to be acknowledged by the TNC, WinPack goes into a recovery routine and tries to re-establish communication. If the recovery fails, then an error message is displayed.


Using Host Mode

WinPack behaves much the same as it does when using a TNC in terminal (normal) mode, and so most of the comments in the main help file are relevant. Some sections - such as TNC Settings - obviously are not relevant.

If you split the screen using "Options", "Split Window", or Ctrl_S, you will find that monitored traffic appears in the top window and text for your connections appears in the bottom window. The monitored traffic will continue to appear even when you have a connection in progress.


Virtual TNC

In host mode, WinPack uses a Virtual TNC - what appears to the user as responses from a typical TNC2 compatible TNC is, in fact, WinPack "pretending" to be a TNC. This gives a familiar user interface to anyone who has been accustomed to using a TNC in terminal mode.

The virtual TNC will return the familiar "cmd:" prompt when you press <Return>. The TNC2 style commands available can be listed by using the command "help", or simply "?". You can obtain detailed help on any Virtual TNC command by using  ?<command> e.g. ?DISPLAY will result in help on the DISPLAY command being shown.


The Multi-channel Terminal

In host mode WinPack has a separate screen that support up to 9 channels in addition to the channel used by the main Winpack screen. To open the terminal, either click the terminal button on the button bar, or select "Action", "Terminal". The number of channels available will be shown by how many buttons are displayed. Some versions of WA8DED firmware may only support a total of 4 channels.

You select the channel you want to use by clicking the large buttons, or you press Alt_1, Alt_2, etc. If a channel is connected, the connected callsign will appear on the button and the small square next to the button will be green or red. It is green if there is no new traffic on that channel, red if there is. Note that if you select button '1' you are returned to the main WinPack screen because that always uses channel '1'. You will find it very easy to switch between the main screen and the terminal by pressing the terminal button in WinPack or the '1' button in the terminal.

The small buttons select which channel you want to display in the top monitor window. The default is to display monitored traffic which is channel '0', but you can select another channel if you wish. Here's an example of what is possible:-

Your main WinPack screen gives access to your PMS, collects your mail from the BBS and displays monitored traffic in the top window. You open the terminal screen and connect to the DX cluster on stream '2'. You now click monitor button '2' so the DX cluster traffic is in the top window and you can now make other connects from the terminal whilst having the cluster traffic constantly visible. Confused? You'll soon get the hang of it!


Terminal Menus

There are various options for colours, fonts, capturing, etc on the terminal menus. They all correspond to similar options on the main WinPack screen.


Terminal Opens Itself
Terminal Opens Itself!

If your main WinPack screen is in use and someone connects to your system, they will be using a stream on the terminal screen and it will automatically open.

If you don't want this to happen, use the Virtual TNC command "USERS 1", which will stop incoming connections to any stream other than the main WinPack screen, but it wont affect how many outgoing connections you can make.


If Things Go Wrong

Host mode should perform very reliably. In the unlikely event of communications with the TNC being lost, WinPack attempts to re-establish the link. There are also two WinPack menu options to help you recover from problems.

In the event of any comms errors occurring, WinPack will make an entry in the COMMERR.TXT. For a further discussion of this, see System Requirements.

Host Initialise

This menu option attempts to re-establish communications with the TNC and sends all the setup information to it. (This process automatically occurs whenever the program is started in host mode).

Host Reset

This option attempts to totally reset the host mode firmware and then reinitialises it. It is put in because of the possibility that switching from the "norrmal" firmware to the WA8DED firmware in a Tiny-2 Mk2 may leave some rubbish in the TNC RAM which causes DED problems. I would recommend that this option is used with Tiny-2s whenever WA8DED has been reselected.


WA8DED And BSX2s

The following comments are my findings with my own TNCs. I would be interested in any "learned opinions" on this!

If I put WA8DED firmware V2.5 from a Tiny-2 in a BSX2 TNC, the results are very poor, in fact it is more or less unusable. The problems is not caused by WinPack, because I have done extensive tests using WA8DED firmware in terminal mode with a simple terminal program - i.e. WinPack was totally removed from the equation.

What happens is that the frames sent by the TNC are often not decodable by the receiving system. Even on a solid link with two systems running on dummy loads, or with the TNCs connected back to back, many frames cannot be decoded. Listening to the frames. I can hear a difference between the ones that are decoded and the ones that aren't, but it's difficult to say what it is.

If the DED firmware is replaced with TF2.7b, or with Tiny-2 V3.1, or with TNC2 firmware, the TNC works perfectly.

My conclusion is that there is something about the BSX2 hardware that makes it unsuited to WA8DED firmware - but I have no idea what!

So, if you have a BSX2 and you want to try host mode with WinPack, I recommend using TF2.7b rather than WA8DED.


System Requirements
System Requirements For TF and WA8DED

(This help section is irrelevant if you are using PC Flexnet and TFEMU).

First of all, you need a TNC2 compatible TNC fitted with either TF or WA8DED firmware - that is pretty obvious!

THE FOLLOWING IS IMPORTANT!

When the TNC is being used in TF or WA8DED host mode, WinPack has to continuously poll the TNC - it will not send data to the PC until it is asked. Also, every command that WinPack sends to the TNC is acknowledged with a response of some sort.

This means that there is a tight, continuous communications loop between WinPack and the TNC. If this loop breaks down because of characters getting dropped on the PC COM port, Winpack will attempt to re-establish it. Usually this is successful, but it can result in some loss of data.

In testing I found that with one PC - a DX2 running Windows for Workgroups - I could not get satisfactory comms performance without using a port with a buffered UART (16550). Without a 16550, overruns kept occurring on the port when heavy disk activity was in progress. Overruns occur because the Windows comms drivers don't service the port quickly enough - there's nothing I can do about that because the drivers are part of Windows, not part of WinPack.

 I would certainly recommend the use of a 16550, most new PCs have them as standard. PLEASE NOTE - if you aren't using Win95, the FIFO in the UART will not be automatically enabled! With WfW you need to make an entry in SYSTEM.INI (see WINDOWS\SYSINI.WRI - COM1FIFO). With Win 3.1 a third party replacement for COMM.DRV, such as CyberCom, is a good idea.

If you are using host mode, whenever a comms error occurs, WinPack will make an entry in a file called COMMERR.TXT, which is in the main WinPack directory. An overrun on the port will usually cause a series of three entries:- First the overrun is reported, next the comms loop will fail and there will be an entry saying the comms loop has been recovered, finally there may be an entry saying the comms loop has been kicked back into life. When you first start using host mode, keep having a look at this file. If you get a lot of overrun entries, then you really should consider fitting a port with a 16550. If you get many entries of other sorts, other than an occasional "COMMS LOOP KICKED" message, then I'd be interested to hear what they are. PLEASE NOTE - turning off the PC whilst WinPack is running can cause a lot of entries in the file, because of the rubbish that may come out of the TNC as it powers down.


TFEMU Requirements
System Requirements For TFEMU

You need to be to be loading PC Flexnet and TFEMU underneath Win95. Please see WINPFLEX.TXT for more information.